package com.jxb.jingchen.print.printer;

import android.app.Application;
import android.bluetooth.BluetoothDevice;
import android.graphics.Bitmap;

/**
 * @author jinxb
 * date     : 2021/8/20
 * desc     :
 */
public interface IPrinter {

    void quitPrint();

    void setPrintDensity(int density);

    void startJob(double pagerW, double pagerH, int orientation);

    void drawRectangle(double x, double y, double width, double height, double lineWidth);

    void draw2DQRCode(String qrCode, double codeX, double codeY, double qrCodeWidth);

    void drawText(String s, double x, double y, double width, double height, double fontSize,
                  int align);

    void print(int quantity, int labelType);

    boolean connection(Application application, BluetoothDevice device);

    void draw1DBarcode(String text, double x, double y, double width, double height,
                       double textHeight, int position);

    void drawLine(double x1, double y1, double x2, double y2, double lineWidth);

    void drawLineHorizontal(double x1, double y1, double length, double lineWidth);

    void drawLineVertical(double x1, double y1, double length, double lineWidth);

    void drawBitmap(Bitmap bitmap, double x, double y, double width, double height, int rotate);
}
